package cn.iocoder.yudao.module.wine.controller.app.supplyinfo.vo;

import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.ToString;

import javax.validation.constraints.NotNull;
import java.math.BigDecimal;

@Schema(description = "app - 供求信息新增/修改 Request VO")
@Data
@ToString(callSuper = true)
public class AppSupplyInfoSaveReqVO {

    @Schema(description = "发布类型：1--出售，2--求购", example = "发布类型：1--出售，2--求购")
    private Integer infoType;

    @Schema(description = "信息类型: Info_Type表主键ID", example = "信息类型: Info_Type表主键ID")
    @NotNull(message = "酒类类型不能为空")
    private Integer supplyTypeId;

    @Schema(description = "信息名称", example = "信息名称")
    private String infoName;

    @Schema(description = "简短标题", example = "简短标题")
    private String infoTitle;

    @Schema(description = "年份", example = "年份")
    private Integer showYear;

    @Schema(description = "香型", example = "香型")
    private Integer fragranceType;

    @Schema(description = "度数", example = "度数")
    private Integer degree;

    @Schema(description = "容量", example = "容量")
    private Integer capacity;

    @Schema(description = "包装", example = "包装")
    private Integer packing;

    @Schema(description = "产地", example = "产地")
    private Integer productArea;

    @Schema(description = "语言", example = "语言")
    private Integer language;

    @Schema(description = "区域id", example = "区域id")
    private Integer areaId;

    @Schema(description = "多少瓶", example = "多少瓶")
    private Integer quantity;

    @Schema(description = "多少件", example = "多少件")
    private Integer packages;

    @Schema(description = "标签:多个“，”隔开:包损、到付等", example = "标签:多个“，”隔开:包损、到付等")
    private String labels;

    @Schema(description = "条款", example = "条款")
    private String clause;

    @Schema(description = "特殊标签",example = "特殊标签")
    private String tags;

    @Schema(description = "单图",example = "单图")
    private String image;

    @Schema(description = "多图",example = "多图")
    private String images;

    @Schema(description = "单位：件/箱",example = "单位：件/箱")
    private Integer unit;

    @Schema(description = "市场价格", example = "市场价格")
    private BigDecimal marketPrice;

    @Schema(description = "销售价格", example = "销售价格")
    private BigDecimal salePrice;

    @Schema(description = "描述", example = "描述")
    private String description;

    @Schema(description = "交易状态：1--正常交易，2--担保交易中", example = "交易状态：1--正常交易，2--担保交易中")
    private Integer tradeStatus;

    @Schema(description = "是否担责", example = "是否担责")
    private Integer isDuty;

    @Schema(description = "统计标题名称", example = "统计标题名称")
    private String countName;

    /**
     * 是否参与统计：0--不参与，1--参与
     */
    @Schema(description = "是否参与统计", example = "是否参与统计")
    private Integer isCount;
    /**
     * 是否有配置：0--没有，1--有
     */
    @Schema(description = "是否有配置", example = "是否有配置")
    private Integer isConfig;
}
